package com.itheima.homework7;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collection;

/*
1. 题目
请定义一个 Collection 类型的集合，存储以下分数信息：
88.5,39.2,77.1,56.8,89,99,59.5

请编程实现以下功能：
使用增强 for 遍历所有元素，并打印
使用增强 for 遍历所有元素，打印不及格的分数；
使用增强 for 遍历所有元素，
计算不及格的分数的数量，和平均分，并打印 计算结果。
使用增强 for 遍历所有元素，求出最高分，并打印；

(注意：以上所有功能写在一个 main()方法中，但请单独实现


 */
public class Test05 {
    public static void main(String[] args) {
        Collection<String> c = new ArrayList<>();
        int count = 0;
        double average = 0.0;
        double max = 0;
        c.add("88.5");
        c.add("39.2");
        c.add("77.1");
        c.add("56.8");
        c.add("89");
        c.add("99");
        c.add("59.5");
        method1(c);
        method2(c);
        method3(c, count, average);
        method4(c, max);
    }

    private static void method4(Collection<String> c, double max) {
        System.out.println("使用增强 for 遍历所有元素，求出最高分，并打印；");
        for (String s : c) {
            double num1 = Double.parseDouble(s);

            if (num1 > max) {
                max = num1;
            }
        }
        int max1 = (int) max;
        System.out.println(max1);
    }

    private static void method3(Collection<String> c, int count, double average) {
        System.out.println("使用增强 for 遍历所有元素，计算不及格的分数的数量，和平均分，并打印 计算结果");
        for (String s : c) {


            double num = Double.parseDouble(s);
            average += num;
            if (num < 60.0) {
                count++;
                System.out.println(num);
            }
        }
        System.out.println("count = " + count);
        //System.out.println("average="+average/7);
        BigDecimal b = BigDecimal.valueOf(average / 7);
        BigDecimal b1 = BigDecimal.valueOf(1);
        System.out.println("平均值：" + b.divide(b1, 2, BigDecimal.ROUND_FLOOR));
    }

    private static void method2(Collection<String> c) {
        System.out.println("使用增强 for 遍历所有元素，打印不及格的分数； ");
        for (String s : c) {
            double num = Double.parseDouble(s);
            if (num < 60.0) {
                System.out.println(num);
            }
        }
    }

    private static void method1(Collection<String> c) {
        System.out.println("使用增强 for 遍历所有元素，并打印");
        for (String s : c) {
            System.out.println(s);
        }
    }
}
